/** crm自定义列表 公共逻辑 */
import { mapGetters } from 'vuex'
export default {
	components: {},
	data() {
		return {
			loading: false, // 加载动画
			headMoreTypes: [], // 页面头部更多按钮
			tableHeight: document.documentElement.clientHeight - 150, // 表的高度
			list: [],
			fieldList: [],
			currentPage: 1,
			pageSize: 15,
			pageSizes: [15, 30, 45, 60],
			total: 0,
			search: '', // 搜索内容
			/** 控制详情展示 */
			rowID: '', // 行信息
			rowType: '', // 详情类型
			rowProductId: '', // 产品iD用于保单/保全/订单
			rowProductType: '', // 产品type用于保单/保全/订单
			showDview: false,
			/** 勾选行 */
			selectionList: [], // 勾选数据 用于全局导出
			showCreate: false
		}
	},

	computed: {
		// ...mapGetters(['crm'])
	},
	created() {},
	async mounted() {},

	methods: {
		/** 获取列表数据 */
		async getList() {
			this.loading = true
			const params = this.getParams()
			const res = await this.tableMixinModule.ListApi(params)
			this.list = res.data.list
			this.static = res.statistics
			this.total = res.data.totalRow
			this.loading = false
		},
		getParams() {
			var params = {
				page: this.currentPage,
				limit: this.pageSize,
				search: this.search
			}
			return params
		},

		// 刷新操作
		crmReload() {
			this.currentPage = 1
			this.getList()
		},

		/** 勾选操作 */
		// 当选择项发生变化时会触发该事件
		handleSelectionChange(val) {
			this.selectionList = val // 勾选的行
		},

		// 更改每页展示数量
		handleSizeChange(val) {
			this.pageSize = val
			this.getList()
		},
		// 更改当前页数
		handleCurrentChange(val) {
			this.currentPage = val
			this.getList()
		}
	}
}
